Stream transmission method and device

ABSTRACT

A transmitter for implementing a stream transmission method is disclosed. Optionally, the transmitter first determines an equal weighting of a plurality of stream weights and transmits a plurality of transmission signals as a function of a plurality of data streams and the equal weighting of the plurality of stream weights. Thereafter, the transmitter reiterates as needed a determination of an unequal weighting of the plurality of stream weights and a transmission of the plurality of transmission signals as a function of the plurality of data streams and the unequal weighting of the plurality of stream weights.

FIELD OF THE INVENTION

[0001] In general, the present invention relates to the field ofcommunication systems. More specifically, the present invention relatesto the transmission of data streams by a transmitter of communicationsystem.

BACKGROUND OF THE INVENTION

[0002] Bell Labs Layered Space-Time (“BLAST”) is a prior art techniquefor sending multiple data streams from a single transmitting device andmay use successive cancellation to recover the transmitted symbols. Eachdata stream is transmitted with the same average power, and in order toperform successive cancellation, the optimal cancellation order of thedata streams at the receiver needs to be determined. The prior artdetermination of the optimal ordering requires either channel knowledgeat the transmitter to solve the ordering problem or a computationallycomplex algorithm in the receiver to determine the optimal ordering.Having channel knowledge at the transmitter requires a large amount offeedback in mobile channels, and transmitting each data stream with thesame power requires a successive cancellation algorithm at the receiverto determine the ordering of the data streams. The consequence of bothsolutions is a burdensome, complex computation being performed by thetransmitter or receiver, respectively.

[0003] Thus, there is a need for a new and unique data streamtransmission method.

SUMMARY OF THE INVENTION

[0004] One form of the present invention is a method of operating atransmitter comprising a determination of an unequal weighting of aplurality of stream weights. In one aspect, the unequal weighting isaccomplished by a determination of a mean square error for each streamweight of a plurality of stream weights, a determination of a firststream weight of the plurality of stream weights having the largest meansquare error, an increase in a power of the first stream weight, and adecrease in a power of each stream weight of the plurality of streamweights excluding the first stream weight. In a second aspect, theunequal weighting is accomplished by an initialization of a first streamweight, an increase in the first stream weight by a product of a powervariable and an increment, and a determination of a plurality of streamweights excluding the first stream weight as a function of acorresponding mean square error.

[0005] The foregoing form as well as other forms, features andadvantages of the invention will become further apparent from thefollowing detailed description of the presently preferred embodiment,read in conjunction with the accompanying drawings. The detaileddescription and drawings are merely illustrative of the invention ratherthan limiting, the scope of the invention being defined by the appendedclaims and equivalents thereof.

BRIEF DESCRIPTION OF THE DRAWINGS

[0006]FIG. 1 illustrates one embodiment of a transmitter in accordancewith the present invention;

[0007]FIG. 2 illustrates a flowchart representative of a streamweighting determination method in accordance with the present invention;

[0008]FIG. 3 illustrates a flowchart representative of a firstembodiment of the stream weighting method of FIG. 2 in accordance withthe present invention; and

[0009]FIG. 4 illustrates a flowchart representative of a secondembodiment of the stream weighting method of FIG. 2 in accordance withthe present invention.

DETAILED DESCRIPTION OF THE PRESENTLY PREFERRED EMBODIMENTS

[0010]FIG. 1 illustrates one embodiment of a transmitter in accordancewith one embodiment of the present invention. In the illustratedembodiment, a transmitter 10 comprises a new and unique stream weightmodule 11, a plurality of conventional mixers 12 ₁-12 _(n), a pluralityof conventional transmitting units 13 ₁-13 _(n), and a plurality ofconventional antennas 14 ₁-14 _(n). The stream weight module 11 providesa plurality of stream weights α₁-α_(n) to the mixers 12 ₁-12 _(n),respectively. The mixers 12 ₁-12 _(n) conventionally mix the streamweights α₁-α_(n) with a plurality of data streams₁-_(n), respectively,whereby the transmitting units 13 ₁-13 _(n) and the antennas 14 ₁-14_(n) conventionally provide a plurality of transmission signals (notshown).

[0011] The stream weight module 11 can be implemented in hardware(analog and/or digital), software, or a combination of hardware andsoftware. A functional description of the stream weight module 11 willnow be provided herein in the context of an execution of a flowchart 20,a flowchart 30, and a flowchart 50 by the stream weight module 11. Thestream weight module 11, as will be appreciated by those having ordinaryskill in the art from the subsequent description herein, can be employedwithin various communications systems, such as, for example, aorthogonal frequency division multiplexing (“OFDM”) system, a spreadOFDM system, a single carrier system, a code division multiple access(“CDMA”) system, and an interleaved frequency division multiple access(“IFDMA”) system. Those having ordinary skill in the art will furtherappreciate a sequential operation of various stages of the stream weightmodule 11 (e.g., in a software implementation) and a concurrentoperation of various stages of the stream weight module 11 (e.g., in ahardware implementation).

[0012] Because the determination of the unequal weightings for thestream weight module 11 requires some assumptions about the type ofreceiver that receives the signal transmitted from the transmitter 10,the received signal is now described. The signal from the transmitter 10received at a receiving unit may be expressed in the frequency domainaccording to the following equation [1]: $\begin{matrix}{{Y(k)} = {{\sum\limits_{l = 1}^{n}\quad {\alpha_{l}{H_{l}(k)}{x_{l}(k)}}} + {N(k)}}} & \lbrack 1\rbrack\end{matrix}$

[0013] where k is an integer that may indicate the subcarrier number (orfrequency bin), Y(k) is an M_(R)×1 vector where M_(R) is the number ofreceive antennas, H_(l)(k) is the M_(R)×1 channel vector for stream l,x_(l)(k) is the frequency-domain data symbol for stream l on subcarrierk (for single-carrier, x_(l)(k) is the Fast Fourier Transform (“FFT”) ofN time-domain symbols), and N(k) is additive noise that may havecovariance matrix σ²I where σ² is the noise power. The noise power isimportant in determining the best unequal stream weights as describedbelow.

[0014] The determination of an unequal weighting of stream weights bythe stream weight module 11 requires the transmitter to assume a type ofdemodulation used by the receiver. If the receiver performs successivecancellation (as is known in the art), the received symbols can beestimated according to the following equation [2]: $\begin{matrix}{{r_{l}(k)} = {{w_{l}^{H}(k)}\left\{ {{Y(k)} - {\sum\limits_{p = 1}^{l - 1}\quad {{H_{l}(k)}{{\hat{x}}_{l}(k)}}}} \right\}}} & \lbrack 2\rbrack\end{matrix}$

[0015] where w_(l)(k) is given by the following equation [3]:$\begin{matrix}{{w_{l}(k)} = {{\alpha_{l}\left( {{\sigma^{2}I} + {\sum\limits_{p = l}^{n}{\alpha_{p}^{2}{H_{p}(k)}{H_{p}^{H}(k)}}}} \right)}^{- 1}{H_{l}(k)}}} & \lbrack 3\rbrack\end{matrix}$

[0016] and for single carrier, {circumflex over (x)}_(l)(k) is given bythe following equation [4]:

{circumflex over (x)} _(l)(k)=FFT(slice{IFFT[r _(l)(k)]})  [4]

[0017] where IFFT denotes an inverse FFT, and the slice operation refersto a symbol decision operation.

[0018] The idea of one embodiment of the present invention is to findthe unequal stream weights that improve the mean square errorperformance of the successive cancellation receiver and allow thereceiver to demodulate the data streams in an order known by thereceiver to thereby thus avoid a need by the receiver to determine anoptimal stream demodulating order. The stream demodulation order is setin equation [2]. In one embodiment, the stream demodulation ordering isfrom data stream₁ to data stream_(n). Other predetermined orderings canalso be used in alternative embodiments, such as, for example, thestream demodulation ordering can be from data stream_(n) to datastream₁.

[0019] Each mean square error equation subsequently described hereinassumes the successive cancellation operations described above.

[0020]FIG. 2 illustrates the flowchart 20 as a representation of astream weighting method in accordance with the present invention. Thestream weight module 11 initiates a stage S22 of the flowchart 20 uponan operational activation of the transmitter 10. During the stage S22,the stream weight module 11 determines an equal weighting for the streamweights α₁-α_(n). In one embodiment, the equal weighting is dynamicallydetermined, such as, for example, by an execution of one or moreequations in real time by the stream weight module 11. In anotherembodiment, the equal weighting is pre-determined and stored whereby thestream weight module 11 retrieves the appropriate weight value for thestream weights α₁-α_(n) in real time.

[0021] Upon completion of the stage S22, the stream weight module 11proceeds to a stage S24 of the flowchart 20. In one embodiment, thestage S22 is completed by the stream weight module 11 within aprescribed time period as determined by the operational specification ofa communication system employing the stream weight module 11. During thestage S24, the stream weight module 11 determines an unequal weightingof the stream weights α₁-α_(n) whereby at least two or more of thestream weights α₁-α_(n) have unequal weight values. In one embodiment,the unequal weighting is dynamically determined, such as, for example,by an execution of one or more equations in real time by the streamweight module 11. In another embodiment, the unequal weighting ispre-determined and stored whereby the stream weight module 11 retrievesthe appropriate weight values for the stream weights α₁-α_(n) in realtime.

[0022] During a stage S26 of the flowchart 20, the stream weight module11 ascertains a need for reiterating a determination of the unequalweighting of the stream weights α₁-α_(n). In one embodiment, the streamweight module 11 proceeds to stage S24 to perform an additionaldetermination of the unequal weighting when the current unequalweighting determination fails to achieve an optimal power allocation ofthe transmitted signals as determined by the operational specificationof a communication system employing the stream weight module 11.Conversely, the stream weight module 11 proceeds to terminate theflowchart 20 when the current unequal weighting determination achievesan optimal power allocation of the transmitted signals.

[0023] In the embodiments where the unequal weighting of stream weightsα₁-α_(n) is pre-determined and stored, stage S22 may be omitted andstage S24 can determine the unequal weighting of stream weights α₁-α_(n)from a lookup table operation. Additionally, a receiver may determinethe unequal weighting of stream weights α₁-α_(n) and provide such tostream weight module 11.

[0024] Those having ordinary skill in the art will appreciate variousbenefits of flowchart 20, such as, for example, improved receiverperformance as measured by a bit error rate and simplified successivecancellation demodulation because the data streams will be decoded inorder (i.e., the demodulation ordering of the streams does not need tobe determined by the receiver).

[0025]FIG. 3 illustrates a flowchart 30 as a representation of oneembodiment of flowchart 20. During a stage S32, the stream weight module11 determines an equal weighting of the stream weights α₁-α_(n). In oneembodiment of the stage S32, the equal weighting of the stream weightsα₁-α_(n) are determined in accordance with the following equation [5]:

α_(i)=1/{square root}{square root over (n)}  [5]

[0026] where i=1 to n, and n is the number of data stream₁-datastream_(n).

[0027] Upon completion of the stage S32, the stream weight module 11proceeds to a stage S34 of the flowchart 30 to establish an initialvalue for an increment s, and a statistical nature of channel vectorH_(l)(k) (for l=1, . . . n). The statistical nature of H_(l)(k) is usedbecause the true channel in equation [1] may not be known by thetransmitter 10 and thus when the unequal power weights are determined, amodel for channel vector H_(l)(k) may be employed. In one embodiment ofthe stage S34, the initial value of the increment s is an arbitrarilysmall number (e.g., 0.001). In another embodiment of the stage S34, theinitial value of the increment s is determined in accordance with thefollowing equation [6]: $\begin{matrix}{s = \frac{1}{4\sqrt{n}}} & \lbrack 6\rbrack\end{matrix}$

[0028] In one embodiment of the stage S34, the statistical nature ofchannel vector H_(l)(k) (for l=1, . . . n) is determined whereby thestream weights α₁-α_(n) can be averaged over at least one realization ofchannel vector H_(l)(k). Specifically, the elements of channel vectorH_(l)(k) can be formed at each k by generating independent unit variancecomplex Gaussian random variables to approximate independent fading asis known in the art. In another embodiment of stage S34, channel vectorH_(l)(k) is generated as a FFT of some number (e.g., a L number) of timetaps where the time taps span the expected delay spread of the channeland are generated as independent complex Gaussian random variableshaving some variance (e.g., 1/L).

[0029] Upon completion of the stage S34, the stream weight module 11proceeds to a stage S36 of the flowchart 30 to determine a mean squareerror (“MSE”) for each stream₁-stream_(n) in accordance with thefollowing equation [7]: $\begin{matrix}{{MSE}_{l} = {\sum\limits_{k = 0}^{N - 1}\quad \frac{1}{1 + {\alpha_{l}^{2}{H_{l}^{H}(k)}{Q_{l}^{- 1}(k)}{H_{l}(k)}}}}} & \lbrack 7\rbrack\end{matrix}$

[0030] where Q_(l)(k) is determined in accordance with the followingequation [8]: $\begin{matrix}{{Q_{l}(k)} = {{\sigma^{2}I} + {\sum\limits_{p = {l + 1}}^{n}{\alpha_{p}^{2}{H_{p}(k)}{H_{p}^{H}(k)}}}}} & \lbrack 8\rbrack\end{matrix}$

[0031] From equation [8], the noise power σ² of the receiver is neededto determine Q_(l)(k). Thus, the noise power σ₂ of the receiver is vitalto a determination of the unequal weighting of stream weights α₁-α_(n).

[0032] Upon completion of the stage S36, the stream weight module 11proceeds to a stage S38 of the flowchart 30 to determine the streamweight from the stream weights α₁-α_(n) that has the largest MSE asdetermined during the stage S36 in accordance with equations [7] and[8]. The stream weight having the highest MSE is referred to as streamweight α_(max).

[0033] Upon completion of the stage S38 of the flowchart 30, a power ofthe stream weight α_(max) is increased by increment s during a stage S40of the flowchart 30 and the remaining stream weights are decreased inpower during a stage S42 of the flowchart 30 to realize the followingequation [9]: $\begin{matrix}{{\sum\limits_{l = 1}^{n}\quad \alpha_{l}^{2}} = 1} & \lbrack 9\rbrack\end{matrix}$

[0034] An unequal weighting of the stream weights α₁-α_(n) is achievedupon a completion of the stage S42 of the flowchart 30. The streamweight module 11 thereafter proceeds to a stage S44 of the flowchart 30to ascertain a need for an additional iteration of the stages S36-S42 byascertaining whether the MSE of each stream weight α₁-α_(n) according toequations [7] and [8] are approximately equal, such as, for example,when the MSE of each stream weight α₁-α_(n) is within 0.001 of eachother. If so, the stream weight module 11 terminates the flowchart 30.Otherwise, the stream weight module 11 proceeds to stages S36-S42 for anadditional determination of an unequal weighting of stream weightα₁-α_(n).

[0035] In an alternative embodiment of the flowchart 30, the stage S32may be omitted.

[0036]FIG. 4 illustrates a flowchart 50 as a representation of a secondembodiment of flowchart 20 (FIG. 2). During a stage S52 of the flowchart50, the stream weight module 11 initializes stream weight α_(n). In oneembodiment of the stage S52, stream weight α_(n) is initialized inaccordance with the following equation [10]: $\begin{matrix}{\alpha_{n} = \frac{1}{2\sqrt{n}}} & \lbrack 10\rbrack\end{matrix}$

[0037] Upon completion of the stage S52, the stream weight module 11proceeds to a stage S54 of the flowchart 50 to establish an initialvalue for an increment s and a statistical nature of channel vectorH_(l)(k) (for l=0, . . . n) as previously described herein in aconnection with stage S34 of flowchart 30 (FIG. 3). Additionally, aresolution value E is established during stage S54. In one embodiment,the resolution value E is 0.001.

[0038] Upon completion of the stage S54, the stream weight module 11proceeds to a stage S56 of the flowchart 50 to determine a weighting ofthe stream weights α₁-α_(n−1). In one embodiment, the weighting of thestream weights α₁-α_(n−1) are determined in accordance with thefollowing equation [11]: $\begin{matrix}{\alpha_{l}^{2} = {\frac{1}{{MSE}_{n}}{\sum\limits_{k = 0}^{N - 1}\frac{1}{{H_{l}^{H}(k)}{Q_{l}^{- 1}(k)}{H_{l}(k)}}}}} & \lbrack 11\rbrack\end{matrix}$

[0039] where MSE_(n) and Q_(l)(k) are determined in accordance withequations [7] and [8], respectively.

[0040] Upon completion of the stage S56, the stream weight module 11proceeds to a stage S58 of the flowchart 50 to determine a powervariable c. In one embodiment, the power variable c is determined inaccordance with the following equation [12]: $\begin{matrix}{c = {{sign}\left( {1 - {\sum\limits_{l = 1}^{n}\alpha_{l}^{2}}} \right)}} & \lbrack 12\rbrack\end{matrix}$

[0041] where sign(x)=+1 if x>0, sign(x)=0 if x=0, and sign(x)=−1 if x<0.

[0042] Upon completion of the stage S58, the stream weight module 11sequentially proceeds to a stage S60 of the flowchart 50 to increase theweighting of stream weights α_(n) by a product of power variable c andincrement s, a stage S62 of the flowchart 50 to divide the increment sby a factor of two, and a stage S64 of the flowchart 50 to determine theweighting of the stream weights α₁-α_(n−1) as previously described inconnection with stage S56.

[0043] An unequal weighting of the stream weights α₁-α_(n) is achievedupon a completion of the stage S64 of the flowchart 50. The streamweight module 11 thereafter proceeds to a stage S66 of the flowchart 50to ascertain a need for an additional iteration of stages S58-S64 bycomparing increment s and resolution value E. Stream weight module 11proceeds to stage S58 when increment s is greater than resolution valueE. Otherwise, the stream weight module 11 terminates the flowchart 50.

[0044] The present invention may be embodied in other specific formswithout departing from its spirit or essential characteristics. Thedescribed embodiments are to be considered in all respects only asillustrative and not restrictive. The scope of the invention is,therefore, indicated by the appended claims rather than by the foregoingdescription. All changes that come within the meaning and range ofequivalency of the claims are to be embraced within their scope.

We claim:
 1. A method of operating a transmitter, said methodcomprising: determining a first unequal weighting of a plurality ofstream weights; and transmitting a plurality of transmission signals asa function of a plurality of data streams and the first unequalweighting of the plurality of streams weights.
 2. The method of claim 1,further comprising: determining a second unequal weighting of theplurality of stream weights subsequent to the determination of the firstunequal weighting for the plurality of stream weights; and transmittingthe plurality of transmission signals as a function of the plurality ofdata streams and the second unequal weighting of the plurality ofstreams weights.
 3. A method of operating a transmitter, said methodcomprising: determining a mean square error for each stream weight of aplurality of stream weights; determining a first stream weight of theplurality of stream weights having the largest mean square error;increasing a power of the first stream weight; and decreasing a power ofeach stream weight of the plurality of stream weights excluding thefirst stream weight.
 4. The method of claim 3, further comprising:establishing a set of statistics corresponding to a channel vector,wherein determining a mean square error for each stream weight of theplurality of stream weights is according to:${MSE}_{} = {\sum\limits_{k = 0}^{N - 1}\quad \frac{1}{1 + {\alpha_{}^{2}{H_{}^{H}(k)}{Q_{}^{- 1}(k)}{H_{}(k)}}}}$


5. The method of claim 3, further comprising: establishing an increment,wherein an increasing of the power of the first stream weight is by asummation of the power and the increment.
 6. The method of claim 5,wherein establishing the increment is according to:$s = \frac{1}{4\sqrt{n}}$


7. The method of claim 3, wherein decreasing a power of each streamweight of the plurality of stream weights excluding the first streamweight is according to:${\sum\limits_{ = 1}^{n}\quad \alpha_{}^{2}} = 1$


8. The method of claim 3, further comprising repeating limitations whenall of the mean square errors of the plurality of stream weights areunequal.
 9. The method of claim 3, further comprising: determining anequal weighting of the plurality of stream weights prior to limitationsaccording to: α_(i)=1/{square root}{square root over (n)}
 10. A methodof operating a transmitter, said method comprising: initializing a firststream weight; and increasing the first stream weight by a product of apower variable and an increment.
 11. The method of claim 10, whereininitializing the first stream weight is according to:$\alpha_{n} = \frac{1}{2\sqrt{n}}$


12. The method of claim 10, further comprising: determining a weightingof a plurality of stream weights excluding the first stream weightaccording to:$\alpha_{}^{2} = {\frac{1}{{MSE}_{n}}{\sum\limits_{k = 0}^{N - 1}\quad \frac{1}{{H_{}^{H}(k)}{Q_{}^{- 1}(k)}{H_{}(k)}}}}$


13. The method of claim 12, further comprising: dividing the incrementby a factor subsequent to increasing the first stream weight by aproduct of the power variable and the increment; and repeatinglimitations when the increment is greater than a resolution value E. 14.The method of claim 10, further comprising: determining the powervariable according to:$c = {{sign}\left( {1 - {\sum\limits_{ = 1}^{n}\quad \alpha_{}^{2}}} \right)}$


15. A transmitter, comprising: a module operable to determine a firstunequal weighting of a plurality of stream weights; and means fortransmitting a plurality of transmission signals as a function of aplurality of data streams and the first unequal weighting of theplurality of streams weights.
 16. The transmitter of claim 15, wherein:said module is operable to determine a second unequal weighting of theplurality of stream weights subsequent to the determination of the firstunequal weighting for the plurality of stream weights; and the pluralityof transmission signals are transmitted as a function of the pluralityof data streams and the second unequal weighting of the plurality ofstreams weights.
 17. The transmitter of claim 15, wherein, to determinethe first unequal weighting of the plurality of stream weights, saidmodule is further operable to: determine a mean square error for eachstream weight of a plurality of stream weights; determine a first streamweight of the plurality of stream weights having the largest mean squareerror; increase a power of the first stream weight; and decrease a powerof each stream weight of the plurality of stream weights excluding thefirst stream weight.
 18. The transmitter of claim 15, wherein, todetermine the first unequal weighting of the plurality of streamweights, said module is further operable to: establish a set ofstatistics corresponding to a channel vector.
 19. The transmitter ofclaim 18, wherein a determination of the mean square error for eachstream weight of the plurality of stream weights is according to:${MSE}_{} = {\sum\limits_{k = 0}^{N - 1}\quad \frac{1}{1 + {\alpha_{}^{2}{H_{}^{H}(k)}{Q_{}^{- 1}(k)}{H_{}(k)}}}}$


20. The transmitter of claim 15, wherein, to determine the first unequalweighting of the plurality of stream weights, said module is furtheroperable to: establish an increment.
 21. The transmitter of claim 20,wherein an increase in the power of the first stream weight is by asummation of the power and the increment.
 22. The transmitter of claim20, wherein an establishment of the increment is according to:$s = \frac{1}{4\sqrt{n}}$


23. The transmitter of claim 15, wherein a decrease of a power of eachstream weight of the plurality of stream weights excluding the firststream weight is according to:${\sum\limits_{ = 1}^{n}\quad \alpha_{}^{2}} = 1$


24. The transmitter of claim 15, wherein, to determine the secondunequal weighting of the plurality of stream weights, said module isfurther operable to: repeat limitations when all of the mean squareerrors of the plurality of stream weights are unequal.
 25. Thetransmitter of claim 15, wherein, to determine the first unequalweighting of the plurality of stream weights, said module is furtheroperable to: determining an equal weighting of the plurality of streamweights prior to limitations according to: α_(i)=1/{square root}{squareroot over (n)}
 26. The transmitter of claim 15, wherein, to determine afirst unequal weighting of the plurality of stream weights, said moduleis further operable to: initialize a first stream weight; and increasethe first stream weight by a product of a power variable and anincrement.
 27. The transmitter of claim 26, wherein an initialization ofthe first stream weight is according to:$\alpha_{n} = \frac{1}{2\sqrt{n}}$


28. The transmitter of claim 26, wherein, to determine the first unequalweighting of the plurality of stream weights, said module is furtheroperable to: determine a weighting of a plurality of stream weightsexcluding the first stream weight according to:$\alpha_{n} = \frac{1}{2\sqrt{n}}$


29. The transmitter of claim 28, wherein, to determine the secondunequal weighting of the plurality of stream weights, said module isfurther operable to: divide the increment by a factor subsequent toincreasing the first stream weight by a product of the power variableand the increment; and repeat limitations when the increment is greaterthan a resolution value.
 30. The transmitter of claim 26, wherein, todetermine the first unequal weighting of the plurality of streamweights, said module is further operable to: determining the powervariable according to:$c = {{sign}\left( {1 - {\sum\limits_{l = 1}^{n}\alpha_{l}^{2}}} \right)}$